home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-06-24 | 1.6 KB | 67 lines | [TEXT/MPS ] |
- /*
- FastBitCopies.h
-
- Interface to FastBitCopies.c
-
- Special bit copy routines for 8-bit graphics
-
- Copyright 1993 by Al Evans
-
- 1/27/93
-
- */
-
- #undef TESTING_C_RTNS
-
- //Is this for the PowerMac?
- #if (defined(powerc) || defined(__powerc) || defined (TESTING_C_RTNS))
- #define MoveBitsXP CMoveBitsXP
- #define MoveBitsXPOR CMoveBitsXPOR
- #define MoveBitsCP CMoveBitsCP
- #define MoveBitsMasked CMoveBitsMasked
- #endif
-
- enum {
- notTransparent = 40
- };
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- pascal void FastCopyBits(const BitMap *srcBits,const BitMap *dstBits,const Rect *srcRect,
- const Rect *dstRect,short mode,RgnHandle maskRgn);
-
- //Returns a ptr to a 8-bit mask the same size as srcBits
- //The mask confains 0xFF for each byte of keyPalIndex in srcBits, 0x00 for all others
- Ptr MakeMask(const BitMap *srcBits, char keyPalIndex);
-
- /*
- Assembly engines
- */
-
- extern void MoveBitsXP(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes, long mirrorFlags);
-
- extern void MoveBitsXPOR(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes, long mirrorFlags, long colorIndex);
-
-
- extern void MoveBitsNOTXP(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes);
-
- extern void MoveBitsCP(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes);
-
- extern void MoveBitsMasked(Ptr source, Ptr dest,
- long nLines, long nBytesPerLine,
- long srcRowBytes, long destRowBytes, Ptr mask, long mirrorFlags);
-
- #ifdef __cplusplus
- }
- #endif
-